home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
LOGIC Apps
/
Logic-APPLE_II_APPS.iso
/
mac
/
LOGIC Apple II 5.25" Library - ProDOS
/
PRO086A.dsk
/
STARTUP.bas
< prev
Wrap
BASIC Source File
|
2012-02-16
|
2KB
|
46 lines
10 REM Startup program to prompt for date if no clock
100 GOSUB 2000
110 PRINT CHR$(4)"PREFIX WARP6"
120 PRINT CHR$(4)"-STARTUP"
2000 REM GET DATE
2010 IF PEEK(48902) < >96 OR BIT(0) = 1 THEN RETURN : REM " IF NO RTS OR FOUND CLOCK"
2020 M0$ = "JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC": POKE 49168,0
2030 REM "GET DATE FROM USER"
2040 EE = 0
2050 IF EE THEN PRINT : PRINT "INCORRECT FORMAT.":EE = 0
2060 PRINT : PRINT "ENTER THE DATE; RETURN SKIPS": PRINT : INPUT "FORMAT 03-MAY-88 : ";I$
2070 IF I$ = "" THEN RETURN
2080 IF LEN(I$) < >9 GOTO 2060
2090 IF MID$ (I$,3,1) < >"-" AND MID$ (I$,7,1) < >"-" THEN EE = 1: GOTO 2050
2100 MM$ = ""
2110 REM ENSURE MONTH IN UPPERCASE
2120 FOR X = 4 TO 6
2130 X$ = MID$ (I$,X,1)
2140 IF ASC( MID$ (I$,X,1)) <123 AND ASC( MID$ (I$,X,1)) >96 THEN X$ = CHR$( ASC( MID$ (I$,X,1)) -32)
2150 MM$ = MM$ +X$
2160 NEXT X
2170 REM GET MONTH
2180 X = 1
2190 IF MM$ = MID$ (M0$,X *3 -2,3) THEN MM = X: GOTO 2220
2200 X = X +1: IF X = 13 THEN EE = 1: GOTO 2050
2210 GOTO 2190
2220 REM GET YEAR
2230 YY = VAL( MID$ (I$,8,2))
2240 IF YY = 0 AND MID$ (I$,8,2) < >"00" THEN EE = 1: GOTO 2050
2250 REM GOT YEAR, GET DAY
2260 DD = VAL( MID$ (I$,1,2))
2270 IF DD < = 0 OR DD >31 THEN EE = 1: GOTO 2050
2280 ON MM GOTO 2330,2310,2330,2290,2330,2290,2330,2330,2290,2330,2290,2330
2290 IF DD >30 THEN EE = 1: GOTO 2050
2291 GOTO 2330
2300 IF DD <1 OR DD >30 THEN PRINT : PRINT "Invalid.": GOTO 2290
2301 GOTO 2330
2310 IF DD >29 THEN EE = 1: GOTO 2050
2311 GOTO 2330
2320 IF VAL(I$) <1 OR VAL(I$) >29 THEN 2310
2330 PRINT : PRINT "DATE SET IS "; STR$(DD);"-";MM$;"-"; STR$(YY);"."
2340 PRINT : PRINT "CORRECT? (Y/N) : ";: INPUT "";I$: IF I$ = "" THEN 2340
2350 I$ = LEFT$(I$,1): IF I$ < >"Y" AND I$ < >"y" THEN 2300
2360 POKE 49041,YY *2 +(MM >7): IF MM >7 THEN POKE 49040,(MM -8) *32 +DD
2370 IF MM <8 THEN POKE 49040,MM *32 +DD
2380 RETURN